/*
 * 文件名：BigDecimalSerializer.java
 * 版权：Copyright 2020-2021 CebWM. Co. Ltd. All Rights Reserved.
 * 描述：中信银行资管系统
 * 修改人：JIAOXUJIN copy from com.cebwm.tams.valuation.report.com.cebwm.framework.util.BigDecimalSerializer
 * 修改时间：2017年2月9日
 * 修改内容：新建
 * 系统名称：中信银行资管系统
 */
 
package com.joyintech.util;

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import org.apache.commons.lang3.StringUtils;

import java.io.IOException;
import java.math.BigDecimal;

/**
 * @version 1.0 2019年8月22日
 * @see BigDecimalSerializer
 * @since 1.0
 */
public class BigDecimalSerializer extends JsonSerializer<BigDecimal> {

    /**
     * {@inheritDoc}
     */
    @Override
    public void serialize(BigDecimal value, JsonGenerator gen, SerializerProvider serializers)
        throws IOException {
        if (value == null) {
            gen.writeString(StringUtils.EMPTY);
        }
        else {
            gen.writeString(value.stripTrailingZeros().toPlainString());
        }
    }

}
